<?php
class getError {
    
    public  $errno;
    public  $description;
    public  $batch_id;
    
    function getError($errno, $batch_id) {
        $this->errno = $errno;
        $this->batch_id = $batch_id;
        
        switch ($this->errno) {
            case '0':
                $this->description = 'Ok';//ყველაფერი რიგზეა
                break;
            case '1':
                $this->description = 'Внутренняя ошибка. Обратитесь к администратору';//შიდა შეცდომა. დაუკავშირდით ადმინისტრატორს
                break;
            case '2':
                $this->description = 'N/A';
                break;
            case '3':
                $this->description = 'Некорректное значение величины паузы: XX сек. Допустимо от XX до XX сек.';// პაუზის სიდიდის არაკორექტული მნიშვნელობა
                break;
            case '4':
                $this->description = 'Некорректное значение суммарной величины всех пауз: XX сек. Допустимо от XX до XX сек';
                break;
            case '5':
                $this->description = 'Некорректное значение даты/времени: "XX"';
                break;
            case '6':
                $this->description = 'Не указаны ни дата, ни время';
                break;
            case '7':
                $this->description = 'Неверный тип даты';//თარიღის არასწორი ტიპი
                break;
            case '8':
                $this->description = 'Неверный тип времени';//დროის არასწორი ტიპი
                break;
            case '9':
                $this->description = 'Неверный способ отображения копеек';//არასწორი გზა, ხურდა ცარიელია 
                break;
            case '10':
                $this->description = 'Неверный тип значения денежной суммы';// თანხის ტიპი არასწორია
                break;
            case '11':
                $this->description = 'Выбранный тип просрочки не существует.'; //არჩეული ტიპი არასწორია
                break;
            case '12':
                $this->description = 'Некорректное время "XX"';// არასწორი დრო
                break;
            case '13':
                $this->description = 'Некорректный период. Время начала "XX" больше времени окончания "XX"'; //არასწორი დროის პერიოდი
                break;
            case '14':
                $this->description = 'Некорректная дата "XX"';// არასწორი თარიღი
                break;
            case '15':
                $this->description = 'Неверное максимальное количество попыток дозвона XX. Допустимы значения от XX до XX'; // მცდელობის მაქსიმალური რაოდენობა არასწორია
                break;
            case '16':
                $this->description = 'Неверное время ожидания между попытками XX сек. Допустимы значения от XX до XX сек.'; // ზარებს შორის ლოდინის არასწორი დრო
                break;
            case '17':
                $this->description = 'Неверное время ожидания ответа абонента XX сек. Допустимы значения от XX до XX сек.';//აბონენტის არასწორი არასწორი პასუხის ხანგრძლივობა
                break;
            case '18':
                $this->description = 'Неверное максимальное общее время прослушки XX сек. Допустимы значения от XX до XX сек.';//მოსმენების არასწორი მაქსიმალური დრო
                break;
            case '19':
                $this->description = 'Неверное значение времени, достаточного для понимания XX сек. Допустимы значения от XX до XX сек.';
                break;
            case '20':
                $this->description = 'Список телефонов и параметров пуст, сохранение невозможно'; // სიაში ტელეფონები და პარამეტრები ცარიელია, შეუძლებელია შენახვა
                break;
            case '21':
                $this->description = 'Рассылка не существует';// გზავნილი არ არსებობს
                break;
            case '22':
                $this->description = 'Пустое название рассылки'; //დაგზავნა ცარიელი დასახელებით
                break;
            case '23':
                $this->description = 'Дата начала рассылки "XX" некорректна или в прошлом';  // გაგზავნის თარიღი არ ჯდება მითითებულ პერიოდში
                break;
            case '24':
                $this->description = 'Дата начала рассылки "XX" далеко в будущем. Должна быть не позже "XX"'; // გაგზავნის დრო ძალიან შორსაა  ვადის დასაწყოსთან
                break;
            case '25':
                $this->description = 'Дата окончания рассылки "XX" слишком близка к дате начала. Должна быть не раньше "XX"';// გაგზავნის დრო ძალიან ახლოსაა ბოლო ვადასთან
                break;
            case '26':
                $this->description = 'Неверный отправитель "XX". Допустимы только цифры';// გაგზავნის წყარო არასწორია
                break;
            case '27':
                $this->description = 'В рассылке нет ни одного телефона получателя'; // დაგზავნაში არ არის მიმღების ტელეფონის ნომერი
                break;
            case '28':
                $this->description = 'Пустое расписание обзвона в рассылке';//გამავალი ზაარების გრაფიკი ცარიელია
                break;
            case '29':
                $this->description = 'Продолжительность сообщения XX сек. Допустимы длительности не менее XX сек.';// დასაშვებ ხანგრძლივობაზე ნაკლები
                break;
            case '30':
                $this->description = 'Ошибка в данных рассылки. Строка #XX (тел: "XX"): XX'; // შეცდომა მონაცემთა გავრცელებისას
                break;
            case '31':
                $this->description = 'Телефон "XX" не содержит цифр'; // ნომერი არ შეიცავს ციფრებს
                break;
            case '32':
                $this->description = 'Некорректная длина телефона "XX"'; // ტელეფონის არასწორი სიგრძე
                break;
            case '33':
                $this->description = 'Некорректный формат телефона "XX".';// არასწორი ტელეფონის ფორმა
                break;
            case '34':
                $this->description = 'Некорректная дата окончания обзвона'; // გამავალი ზარის არასწორი მოქმედების ვადა
                break;
            case '35':
                $this->description = 'Неверный формат телефона: содержит недопустимые символы';// ტელეფონის არასწორი ფორმატი, გამოყენებულია დაუმუშავებელი სიმბოლოები
                break;
            case '36':
                $this->description = 'Неверный логин или пароль'; //არსწორია პაროლი ან ნიკი
                break;
            case '37':
                $this->description = 'Неизвестное действие в протоколе'; // უცნობი ქმედება
                break;
            case '38':
                $this->description = 'Неверный формат телефона'; //ტელეფონის არასწორი ფორმატი
                break;
            case '39':
                $this->description = 'Слишком маленький интервал между звонками'; //ზარებს შორის ძალიან მცირე დროის ინტერვალი
                break;
            case '40':
                $this->description = 'Слишком короткий номер отправителя';// ნომერი ძალიან მოკლეა
                break;
            case '41':
                $this->description = 'Слишком длинный номер отправителя';// ნომერი ძალიან გრძელია
                break;
            case '42':
                $this->description = 'Обязательный параметр пуст';// აუცილებელი პარამეტრი ცარიელია
                break;
            default:
                $this->description = 'Unknow error'; // უცნობი შეცდომა
        }
    }
    
    function getJson(){
         
            $json = array("code" => $this->errno, 
                          "description" => $this->description,
                          "batch_id" => $this->batch_id
            );
            
            return json_encode($json);
    }
    
}